/*==================================================
                LIFE AT ALUFIT
==================================================*/

.page-title{
    text-align:center;
    font-size:42px;
    font-weight:300;
    color:#555;
    margin:20px 0 18px;
    letter-spacing:.5px;
    position:relative;
}

.page-title::after{
    content:"";
    display:block;
    width:70px;
    height:2px;
    background:#10cca9;
    margin:18px auto 0;
}

.intro{
    max-width:900px;
    margin:0 auto 45px;
    text-align:center;
    color:#666;
    font-size:16px;
    line-height:1.9;
}

/*==================================================
                GALLERY
==================================================*/

.gallery{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:28px;
    margin-bottom:70px;
}

.popup-img{
    width:100%;
    height:360px;
    object-fit:cover;
    display:block;
    cursor:pointer;
    transition:.35s;
    border-radius:3px;
}

.popup-img:hover{
    transform:scale(1.02);
    opacity:.95;
}

/*==================================================
                LIGHTBOX
==================================================*/

.lightbox{

    position:fixed;

    top:0;
    left:0;

    width:100%;
    height:100%;

    background:rgba(0,0,0,.92);

    display:none;

    justify-content:center;
    align-items:center;

    z-index:999999;

    padding:40px;

}

.lightbox.active{

    display:flex;

}

#lightbox-image{

    max-width:88%;
    max-height:88%;

    object-fit:contain;

    box-shadow:0 15px 50px rgba(0,0,0,.5);

    animation:zoomIn .35s ease;

}

@keyframes zoomIn{

    from{

        transform:scale(.8);
        opacity:0;

    }

    to{

        transform:scale(1);
        opacity:1;

    }

}

/*==================================================
            CLOSE BUTTON
==================================================*/

.lightbox-close{

    position:absolute;

    top:25px;
    right:35px;

    color:#fff;

    font-size:48px;

    cursor:pointer;

    transition:.3s;

    user-select:none;

}

.lightbox-close:hover{

    color:#10cca9;

}

/*==================================================
            PREVIOUS BUTTON
==================================================*/

.lightbox-prev{

    position:absolute;

    left:35px;
    top:50%;

    transform:translateY(-50%);

    color:#fff;

    font-size:60px;

    cursor:pointer;

    transition:.3s;

    user-select:none;

}

.lightbox-prev:hover{

    color:#10cca9;

}

/*==================================================
            NEXT BUTTON
==================================================*/

.lightbox-next{

    position:absolute;

    right:35px;
    top:50%;

    transform:translateY(-50%);

    color:#fff;

    font-size:60px;

    cursor:pointer;

    transition:.3s;

    user-select:none;

}

.lightbox-next:hover{

    color:#10cca9;

}
/*==================================================
            RESPONSIVE
==================================================*/

@media (max-width:1200px){

    .gallery{

        gap:22px;

    }

    .popup-img{

        height:300px;

    }

    #lightbox-image{

        max-width:92%;
        max-height:85%;

    }

}

@media (max-width:991px){

    .page-title{

        font-size:34px;

    }

    .intro{

        font-size:15px;
        margin-bottom:35px;

    }

    .gallery{

        grid-template-columns:1fr;
        gap:20px;

    }

    .popup-img{

        height:auto;

    }

    .lightbox{

        padding:20px;

    }

    #lightbox-image{

        max-width:95%;
        max-height:80%;

    }

    .lightbox-prev,
    .lightbox-next{

        font-size:45px;

    }

    .lightbox-close{

        font-size:42px;
        top:15px;
        right:20px;

    }

}

@media (max-width:768px){

    .page-title{

        font-size:30px;

    }

    .intro{

        font-size:14px;
        line-height:1.8;

    }

    .lightbox-prev{

        left:10px;

    }

    .lightbox-next{

        right:10px;

    }

    .lightbox-prev,
    .lightbox-next{

        width:42px;
        height:42px;

        display:flex;
        align-items:center;
        justify-content:center;

        background:rgba(0,0,0,.55);

        border-radius:50%;

        font-size:28px;

    }

    .lightbox-close{

        font-size:36px;

    }

}

@media (max-width:480px){

    .page-title{

        font-size:26px;

    }

    .intro{

        font-size:13px;

    }

    .gallery{

        gap:16px;

    }

    .popup-img{

        border-radius:2px;

    }

    #lightbox-image{

        max-width:98%;
        max-height:75%;

    }

}

/*==================================================
            IMAGE HOVER EFFECT
==================================================*/

.popup-img{

    box-shadow:0 4px 12px rgba(0,0,0,.08);

}

.popup-img:hover{

    transform:scale(1.03);
    box-shadow:0 12px 30px rgba(0,0,0,.18);

}

/*==================================================
        LIGHTBOX ANIMATION
==================================================*/

.lightbox.active{

    animation:fadeLightbox .3s ease;

}

@keyframes fadeLightbox{

    from{

        opacity:0;

    }

    to{

        opacity:1;

    }

}

/*==================================================
            SMOOTH TRANSITIONS
==================================================*/

.popup-img,
.lightbox-close,
.lightbox-prev,
.lightbox-next{

    transition:all .3s ease;

}